#   hash
#      哈希算法 散列算法 ：set ,dict
#   lib
#      library
#  hashlib


#  md5: 摘要算法
#       只能单项进行
#  对象  -- md5 --> 值--》'str'
#                   一位16种，60**16
# 会碰撞
# 应用场景 ，数据监测 ，验证
# 用户名密码存储
import hashlib
md5 = hashlib.md5()
# print(md5)
md5.update('abc'.encode())
# print('md5--->',md5)
res = md5.hexdigest()
# res = md5.digest()
print(res)
#                     900150983cd24fb0d6963f7d28e17f72

#                     900150983CD24FB0D6963F7D28E17F72
#      32长度的  十六进制的数
# print(len(res))
# #     32长度
#
# sha1 = hashlib.sha1('abc'.encode('utf8'))
# res2 = sha1.hexdigest()
# # res2 = sha1.digest()
# #          22
# print(res2)
# #  a9993e364706816aba3e25717850c26c9cd0d89d
# print(len(res2))
# #  40















